DataSource for Entity Framework for WinForms
LiveAggregate<TSource,TAccumulate>(View<TSource>,TAccumulate,Expression<Func<TAccumulate,TSource,TAccumulate>>,Expression<Func<TAccumulate,TSource,TAccumulate>>,Expression<Func<TAccumulate,TSource,Boolean>>) メソッド

C1.LiveLinq.4.5.2 アセンブリ > C1.LiveLinq 名前空間 > LiveViewExtensions クラス > LiveAggregate メソッド : LiveAggregate<TSource,TAccumulate>(View<TSource>,TAccumulate,Expression<Func<TAccumulate,TSource,TAccumulate>>,Expression<Func<TAccumulate,TSource,TAccumulate>>,Expression<Func<TAccumulate,TSource,Boolean>>) メソッド
source 内の要素の型。
アキュムレータ値の型。
集計対象のビュー。
最初のアキュムレータ値。
ソースビューに追加される各要素に対して呼び出されるアキュムレータ関数。
要素がソースビューから削除されるときに、変更された累積値を取得するために 累積値と要素に適用される関数。
要素がソースビューから削除されるときに funcRemove を適用するかどうかを決定するために使用される関数。 適用しない場合、累積値は削除の影響を受けません。
ビューに対してアキュムレータ関数を適用します。指定されたシード値が最初のアキュムレータ値として使用されます。
シンタックス
'宣言
 
Public Overloads Shared Function LiveAggregate
    (Of TSource,TAccumulate)( _
   ByVal source As View(Of TSource), _
   ByVal seed As TAccumulate, _
   ByVal funcAdd As System.Linq.Expressions.Expression(Of Func(Of TAccumulate,TSource,TAccumulate)), _
   ByVal funcRemove As System.Linq.Expressions.Expression(Of Func(Of TAccumulate,TSource,TAccumulate)), _
   ByVal funcRemoveDefined As System.Linq.Expressions.Expression(Of Func(Of TAccumulate,TSource,Boolean)) _
) As AggregationView(Of TSource,TAccumulate)
public static AggregationView<TSource,TAccumulate> LiveAggregate<TSource,TAccumulate>( 
   View<TSource> source,
   TAccumulate seed,
   System.Linq.Expressions.Expression<Func<TAccumulate,TSource,TAccumulate>> funcAdd,
   System.Linq.Expressions.Expression<Func<TAccumulate,TSource,TAccumulate>> funcRemove,
   System.Linq.Expressions.Expression<Func<TAccumulate,TSource,bool>> funcRemoveDefined
)

パラメータ

source
集計対象のビュー。
seed
最初のアキュムレータ値。
funcAdd
ソースビューに追加される各要素に対して呼び出されるアキュムレータ関数。
funcRemove
要素がソースビューから削除されるときに、変更された累積値を取得するために 累積値と要素に適用される関数。
funcRemoveDefined
要素がソースビューから削除されるときに funcRemove を適用するかどうかを決定するために使用される関数。 適用しない場合、累積値は削除の影響を受けません。

型パラメータ

TSource
source 内の要素の型。
TAccumulate
アキュムレータ値の型。

戻り値の型

最終的なアキュムレータ値を表すビュー。
解説
LiveAggregate の代わりに標準の LINQ クエリー演算子 Aggregate を使用することもできます。 どちらも、ソースで変更が発生すると自動的に再計算が行われるという意味で「ライブ」です。 相違点は、Aggregate が毎回ソースコレクション全体をループ処理して集計を一から行うのに対して、 LiveAggregate はより高パフォーマンスのアルゴリズムを使用し、値をインクリメンタルに維持して、 実際に変更されたソース項目だけを処理します。
参照

LiveViewExtensions クラス
LiveViewExtensions メンバ
オーバーロード一覧